{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "010f130d",
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import emcee\n",
    "import celerite\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "from celerite import terms\n",
    "from scipy.optimize import minimize"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "9ddcc0c8",
   "metadata": {},
   "outputs": [],
   "source": [
    "def DRW_process(t,tau,SF,m):  \n",
    "    r=np.diff(t)/tau\n",
    "    ls=[np.random.normal(m,SF/1.414,1)[0]]\n",
    "    for i in range(len(t)-1):\n",
    "        if r[i]<0:raise TimeSerieError('时间序列未排序')\n",
    "        stdev=(1-np.exp(-2*r[i]))**0.5*SF/1.414\n",
    "        loc=ls[i]*np.exp(-r[i])+m*(1-np.exp(-r[i]))\n",
    "        ls.append(np.random.normal(loc,stdev,1)[0])\n",
    "    return np.array(ls)\n",
    "\n",
    "def log_like(params,y,gp,method):\n",
    "    gp.set_parameter_vector(params)\n",
    "    if method=='MAP':\n",
    "        return -gp.log_likelihood(y)+0.5*params[0]-params[1]*0.5\n",
    "    else: return -gp.log_likelihood(y)\n",
    "\n",
    "def log_probability(params,y,gp):\n",
    "        gp.set_parameter_vector(params)\n",
    "        lp=gp.log_prior()\n",
    "        log_a=gp.get_parameter_dict().get('kernel:log_a')\n",
    "        log_c=gp.get_parameter_dict().get('kernel:log_c')\n",
    "        if not np.isfinite(lp):\n",
    "            return -np.inf\n",
    "        return gp.log_likelihood(y)+lp-0.5*log_a+log_c*0.5\n",
    "\n",
    "\n",
    "def chain(t,s,err,move,method='MAX',tl=[1,5000],sl=[0.02,0.7]):\n",
    "    # Set up the GP model\n",
    "    bounds=dict(log_a=(2*np.log(sl[0]),2*np.log(sl[1])),\n",
    "                log_c=(-np.log(tl[1]),-np.log(tl[0])))\n",
    "    kernel=terms.RealTerm(log_a=np.log(0.1414),log_c=-np.log(400),bounds=bounds)\n",
    "    gp=celerite.GP(kernel,mean=np.mean(s),fit_mean=True)\n",
    "    gp.compute(t,err)\n",
    "    # Fit for the maximum likelihood parameters\n",
    "    initial_params = gp.get_parameter_vector()\n",
    "    soln=minimize(log_like, initial_params,method=\"L-BFGS-B\",args=(s,gp,method))\n",
    "    \n",
    "    gp.set_parameter_vector(soln.x)\n",
    "    rt=np.exp(-gp.get_parameter_dict().get('kernel:log_c'))#MLE or MAP\n",
    "    rs=np.exp(gp.get_parameter_dict().get('kernel:log_a')/2)\n",
    "    if method=='MLE' or method=='MAP':\n",
    "        return np.array([rt,rs])   \n",
    "    #MCMC\n",
    "    initial=np.array(soln.x)\n",
    "    ndim, nwalkers=len(initial),16\n",
    "    sampler=emcee.EnsembleSampler(nwalkers,ndim,log_probability,moves=[move],args=(s,gp))\n",
    "    #Running burn-in\n",
    "    p0=initial+1e-4*np.random.randn(nwalkers,ndim)\n",
    "    p0,lp,_=sampler.run_mcmc(p0,125)    \n",
    "    #Running production\n",
    "    sampler.reset()\n",
    "    sampler.run_mcmc(p0,500)\n",
    "    #Markov chains\n",
    "    t_chain=np.exp(np.sort(-sampler.flatchain[:,1]))\n",
    "    s_chain=np.exp(np.sort(sampler.flatchain[:,0]/2))\n",
    "    return t_chain"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "id": "16b61e2d",
   "metadata": {},
   "outputs": [],
   "source": [
    "t=np.sort(np.random.randint(0,2922,60)+np.random.uniform(-0.13,0.13,60))\n",
    "y=DRW_process(t,292,0.2,18)\n",
    "ls_sdss=[]\n",
    "lsigma=[]\n",
    "for i in range(60):\n",
    "    #s=np.sqrt(0.004**2+np.exp(1.63*(y[i]-22.55)))\n",
    "    s=np.sqrt(0.013**2+np.exp(2*(y[i]-23.36)))\n",
    "    lsigma.append(s)\n",
    "    ls_sdss.append(np.random.normal(y[i],s,1)[0])\n",
    "s_sdss=np.array(ls_sdss)\n",
    "sigma=np.array(lsigma)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "id": "050b2d07",
   "metadata": {},
   "outputs": [],
   "source": [
    "Stretch=chain(t,s_sdss,sigma,move=(emcee.moves.StretchMove(),1))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "id": "e3d65165",
   "metadata": {},
   "outputs": [],
   "source": [
    "DE=chain(t,s_sdss,sigma,move=(emcee.moves.DEMove(),1))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "id": "fa0834a0",
   "metadata": {},
   "outputs": [],
   "source": [
    "Walk=chain(t,s_sdss,sigma,move=(emcee.moves.WalkMove(),1))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "id": "4093f828",
   "metadata": {},
   "outputs": [],
   "source": [
    "Stretch2=chain(t,s_sdss,sigma,move=(emcee.moves.StretchMove(),1))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "id": "012a840d",
   "metadata": {},
   "outputs": [],
   "source": [
    "from scipy.stats import ks_2samp"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "id": "52151a93",
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "KstestResult(statistic=0.023, pvalue=0.029043385667985734, statistic_location=146.51590891641084, statistic_sign=1)"
      ]
     },
     "execution_count": 52,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ks_2samp(Stretch,DE)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "id": "a7ac79fc",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "KstestResult(statistic=0.079125, pvalue=3.369081247668461e-22, statistic_location=357.7829252861861, statistic_sign=1)"
      ]
     },
     "execution_count": 59,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ks_2samp(Stretch,Stretch2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "id": "1c95376c",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "KstestResult(statistic=0.06, pvalue=6.118100244147972e-13, statistic_location=269.65396592568976, statistic_sign=-1)"
      ]
     },
     "execution_count": 55,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ks_2samp(Stretch,Walk)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "id": "496b0769",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "KstestResult(statistic=0.05875, pvalue=2.0087058148993705e-12, statistic_location=337.5864118580077, statistic_sign=1)"
      ]
     },
     "execution_count": 57,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ks_2samp(Walk,DE)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "id": "300060c3",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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7ipfvrznkt077rhDY8eO1aVLl667zxv5/wakyQSQ6w0fPtyUZGb0T3ru3Lme7SdPnuy1buXKlT5rlSxZ0ixZsqRpsVhMSWbBggU9y0qWLGkePXrU8727feHChb22SWnjxo1e21qtVjMyMtLzs2EY5pgxY1L1/dChQ55tZs6caRYoUMCUZIaHh5sRERFmdHS0Z9uEhASzffv2nu3d/TYMw/Nz48aNzXPnzqXaT8uWLU1J5tChQ81OnTqZksygoCCzYMGCXvVee+01r3Zvv/32dY/Ttcfhen777TezfPnynn1ZLBazcOHCptVq9Sxr2bJlmn13f0VFRXn64/557dq1Pvfpbvvqq6+a99xzjynJDA4ONiMiIjztCxQoYG7ZssU8c+aMWb9+fVOSGRoaaoaFhXm2KVGihHnkyJFU9adMmWJKMqOjo80PP/zQ81wUKlTIDAoK8rSvX7++z+clZfvMrHP/jbRs2dIcO3asaRiGaRiGWahQIa/fh9atW5sOh8PnsXnxxRe9jmvKPrdo0cJ89dVX03xO0pPyb9h9jENCQrz+Ht577z2fba/3uE3TNN9//32vxxgVFWUGBwebksxbb73VHD9+/HXbjx8/PlV7m83m+blu3brm77//ft1+vffee54a7va9evXybBsdHW1KMqdMmeJZ9txzz1339aRhw4aebVO+bv3www+e14XIyEiv36syZcqYx44du25fP/vsM9NisZiGYZhRUVFez8srr7ximqZpvvbaa56/yWu3+eijj1LVv3DhglmvXj2v5/Pa3/m0jv/1XL161ezWrVuq14iUf+/du3c3k5KSPG1+/PFHs2TJkmaxYsU82xQrVszncc2IxYsXe463JNNms3m9XgQHB5vTpk1L1S7lc7Zs2TIzNDTU8/uR8vft0UcfNU3TND/77DPTarX6fF5efvnlNPv35ptveh2P0NBQr/81ksw///zTq43dbjf//ve/p/qbTPnaW716dfPw4cM+93mj/9+AtBDYgDwgs4EtISHB84/niSee8FqXVmBz8/XG6lru9itXrvS5/tChQ2ahQoVMSebDDz9s/vzzz6bdbjdN0zRPnjxpDhs2zPNGZsGCBanapvwHeuedd5pbtmzxrN+7d6/n+86dO5uSzCpVqpizZs0yL1y4YJqmaV65csX8+uuvzUqVKpmSzM6dO6fqozu4FC5c2IyKijKnTp1qXr582TTN5CDVoUMHzxukffv23dBxSs+TTz5pSjIrVKhgfvfdd54g4XA4zMOHD5sfffSRzzcq/fr1M998801zz549nj7b7XZz06ZNZtu2bT1vXN3rfD3uQoUKmUWLFjXnzp1rJiUlmS6Xy9y8ebPnmDVp0sR86KGHzAoVKpjffPON6XQ6TafTaX733Xdm8eLFTUlmz549U9V3vzEODw83bTab+cgjj5hHjx41TTP5efn44489QeWhhx5Ks/2NBrZChQqZFovFHDJkiHn69GnTNE3z/PnznjfgUuoPMUzTNGfPnu1Z36NHD8+b/itXrpiffvqpGRoaahYuXPiGA9tHH31kDhw40Ny4caPnzaPL5TIPHjxoPv/886ZhGKbVajV/+eWXTD3uH3/80fNm9d577/X8fdjtdnPu3LlmkSJFPP321X7x4sWex92pUyfz4MGDpmkmB4Xp06d73oQ2adIkVdB19ys0NNS0Wq1m7969Pc+1w+EwDxw44Nn2en8v6b2emKb361bhwoXNjh07mv/97389fZ0zZ46nr48//niaxzA8PNwMDg42n3vuOfPUqVOmaZrm2bNnzV69enn+3t966y3TarWar7/+uhkfH2+apmn+/vvvnr+tiIgIz3K30aNHm5LMIkWKmPPmzTMTExNN0zRNp9NpHj9+3Jw+fbrZt2/fNB9fWtwfIhiGYQ4bNszzu3Pu3DnPBwhpBZqUr6WHDh3K9L5N0zQ3bdrkCf9PP/20+d///tfze3DkyBHz2WefNaXkD7tSvk6bpvdzVqhQIbNbt26eD3kuXLhgDhkyxLP+jTfeMG02mzlgwADz5MmTnsfYu3dvz/OS8rXfbdKkSZ4aHTt2NLdu3epZd/bsWfPbb781u3XrZp4/f96r3fPPP29KMkuWLGlOmjTJPHv2rGmappmUlGSuXLnS80FVgwYNTKfTmeq43uj/NyAtBDYgD8hsYDNN06xataopyWzatKnX8psR2B5++OE03zi5vfvuu6Yks169el7LU77JiI6ONhMSEny2X7JkiSnJLFWqlM9P1E0zOXi5PwlO+Y/cNL3PUv3www+p2iYmJpplypQxJZmvv/56qvX+CGy33nqrKcmcNWvWDde4lsPhMOvWrWtKMr/88stU61M+bl9n4b7//nvP+rCwMHP//v2ptpk8ebJnfcpP9k3zf2+M3cHm2jc7pmman3/+uWebzZs3+2x/o4FNkjl8+PBU603TNLt06WJKMu+55x6v5S6Xy/P3cu+995oulyvNfd9oYEtPv379TEnmk08+mea+fT3uNm3amJLMmjVrekJCSj/88IPX39O1atasaUoymzVr5vPM46JFizzt586d67NfkswuXbpc9/H5M7C1bt3a5+/V+++/7/m9dL+B9tXXv//976naOhwOs2LFip5tfP3Nnz9/3vN6cu3f1gMPPGBK8utZlWPHjnne+A8ZMsTnNoMGDTKl5LNe154F9Udga9SokSnJHDZsWJrbPPfcc57An1LK5yytv6vmzZun+7xUqFDBlGSOHj3aa925c+c8If3RRx/1Wd+XnTt3moZhmOHh4eaOHTt8bnPhwgWzXLlyPkNXVv6/AWnhHjYgn3KP8HjtPWzZ7dy5c5o/f74k6ZVXXklzuyeeeEKStH37dp08edLnNv3790/zZvnPP/9ckvT444+nOcx7uXLl1Lp1a0nSN99843Obpk2berZJKSQkRPfff7+k5HsvskOhQoUkSX/88YffalqtVrVt21aStG7dujS3a9asmZo1a5ZqecuWLRUSEiJJevjhh1WlSpVU27iPy5UrV7R///409zF06FBZLKn/DfXp00flypWTJH311VfXeTSZFxIS4pl36lqdOnWSlPr53LZtm+dxvPrqqz7vQ+zVq5fKly/v176m1K5dO0nXf86ude7cOf3www+SpJdeesnzvKXUunVrNW/e3Gf7HTt2eO4/GjZsmKxWa6ptOnTooDvuuEOSNHv27DT7MmTIkAz3O6teffVVn79X7uc3vd9LX69LVqtVbdq0kSSFhobqhRdeSLVNwYIF1bhxY0mpf4ey42953rx5cjgcCg0NTfO1dOjQoQoJCZHdbldsbKzf9i0lvzZv2bJFNptNL774YprbuV/Lv/vuOzmdTp/bvPzyyz7/rtyvJZLv3yGr1ap77rlHUupjHhsbq4SEBNlsNr377rsZvn948uTJMk1T7dq1U506dXxuExkZqc6dO0vy/t/hz/9vQEoM6w/kU2Y6N2lnlw0bNnhu8L777rsz1ObIkSNe88u5NW3aNM027je2n376qaZPn57mdufPn/fsw5c777wzzbZlypSRlH2ht3379tqwYYNeeeUV/frrr+rSpYuaNGmSoQnI165dq8mTJ2vjxo06duyY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2cyyZcua0dHRZtOmTT3bpPfcuWXk9zItGfkd6tWrlynJ7NWrl8/H5/7dKVSokGeSbffXwIEDr9t3X65evWr+7W9/S/U6kfL1rXv37qkmsDdN/0ycbZqm+e2335pFixb11LJarWbRokXN8PBwr8d37cTXGXnO/PG8jBkzxut4hIWFeSbUdn/9+eefXm0cDofX37skMzQ01CxatKhnsnL317p161Lt80b/vwFp4QwbkMecPHlSJ0+e1KlTp+RwOFSqVCndddddeuaZZxQbG6vjx4/r6aefzuluqn79+tqzZ48+/PBD3XPPPSpWrJhn3qmqVauqR48e+uqrrzyTkN6I8PBwzZ49WytXrtTjjz+uSpUqyeVy6eLFiypRooTuvvtujR07Vvv378/SkOy+tGjRQkuXLtU999yjqKgonTx5UkeOHMnUZXPffvuthgwZoubNm+uWW27RlStXJCUPXNCnTx9t2bIl1chyNptN3377rYYPH65q1arJZrPJNE3dcccd+uijj7Ro0aKAGbWvX79++uabb9S2bVtZLBZZLBbVqFFDo0aN0oYNGwLiTGBK48eP1/z589WqVStFRkbq6tWruvXWW/X222/rm2++8Zw5uZHLjN98801Nnz5dd9xxh8LCwmS321WlShW9+uqr2rp163WH5U/PCy+8oFWrVunBBx9U4cKFlZiYqAoVKmjo0KHauHGj58xBWv0eOHCgfvrpJz322GO65ZZbdPnyZYWFhemuu+7Su+++q82bN2epf+l57LHH9OWXX6pZs2YKDw/XH3/8oSNHjmRqTrqc9tVXX2nkyJFq06aNKlasqKSkJNntdkVHR6tbt276/vvv9e6772a6bnBwsObMmaN58+bpgQceUNGiRZWQkKCiRYvqgQce0Pz58zVr1izZbLZseFTJ7r33Xh04cEBvvPGGmjVrpqioKMXHx8tisahmzZp68skntWjRIn3wwQfZ1ofrGTJkiLZv366+fft6Lm02TVPVq1dX9+7dNX/+/FTz2FmtVo0fP16//PKLnnrqKVWvXl1Wq1Xnz59X4cKF1bRpU40YMULbtm3zOR/ozfj/hvzFMN2v1AAAZLOpU6eqT58+io6OzvTobYGuadOmWr9+vUaNGqVhw4bldHcyrGfPnpo1a5ZiYmI0efLknO4OAOAanGEDACCLVq9e7RlB0n0fYW6wb98+z6f8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1/KUunfvrtjYWBUoUEBt27aVaZp69913tXXr1jQHG5k3b5569OihpKQk3X777WrSpIni4uI0depULV68WKtXr1atWrUkSQ8//LAOHz6c6lgUK1bMU+/JJ5/UpUuXVKtWLdWpU0cXLlzQ5s2b9c9//lPff/+9vv32W1mt1us+tzeibdu2cjgc+vHHH1WvXj3ddtttnnXX3l/XqlUrjR49WkuXLlW3bt383hckI7ABSM1pl9aOy/79NH9RCuISCgC4ET179tQbb7yho0ePqkqVKurcubOaN2+uxo0bq2bNmhk6m/LNN9+oa9eustls+vbbb9W0adNU2/z2228KCQnR3r17VbZsWa91ffr00Z49ezR48GC9/vrrstlskqSDBw/qvvvu09ChQ/Xggw+qbt266ty5s2677TbNmzdPNWrU8HkmyOFwqGvXrjp+/LhefPFFvfHGG56aUvLohL6C6YQJEzRjxgzPGTOn06lu3bpp3rx5mjRpkkaNGuXZ9scff5TT6VSjRo18HpPZs2crNjZWlSpV0po1azyP+dChQ2rRooWOHTuWqs2hQ4f0xBNPKCwsTCtWrFCLFi0866ZPn65evXqpT58+2rx5syTpnXfe8QS2tI7Fxx9/rHvvvVcRERGeZQkJCerRo4eWLFmimTNn6oknnvD5GLLilVdeUalSpfTjjz+qc+fO172stlGjRrJYLFq7dq3f+4H/4ZJIAACAXKhy5cr6+uuvVaZMGV24cEHTp09X3759Vbt2bZUqVUqDBw9WfHx8mu3//e9/q2PHjoqMjNTq1at9hjW3N954I1VY27Ztm5YvX64mTZrozTff9ApWlSpV0rhx4+R0OvX5559n+DHNnz9fv/76q+rWrauxY8d61ZSSRyd0n1lMqUePHl6XN1qtVr366quSki+VTGnHjh2SpOrVq/vsw0cffSRJGj16tNdjrlixooYNG+azzXvvvafLly9r7NixXmFNkp544gl17txZW7Zs0S+//OKzvS+dO3f2CmuSFBkZqfHjx0uSvv766wzXyi6RkZEqXbq0Dh8+rAsXLuR0d/IszrABuL6mz0kWW/rbZZTLLv34vv/qAUA+dt999+ngwYNatGiRVqxY4bkE8NSpU3r77be1YMECrV+/PtVZqY8//lj9+vVTdHS0VqxYocqVK6e5D8Mw1KFDh1TLV6xYIUnq1KmTz7N57ssct2zZkuHH891330mS+vbtm6mBOO67775Uy6pVqyZJ+uOPP7yWnzp1SpJUuHDhVG3sdrs2bdoki8Wihx9+ONX67t276+mnn061POWx8KVZs2ZauHChtmzZogYNGqTzaP5n//79WrZsmQ4cOKBLly7J5XJ5Lsncv39/hutkpyJFiuj48eM6ffq0ChYsmNPdyZMIbACuz2Lz72WLfh4lDQDyu5CQED3yyCN65JFHJCUPRjJ16lSNGDFCBw4c0KuvvqrPPvvMs/2xY8f0zDPPKDQ0VCtXrvQMfpGWEiVK+JwawD2Qxssvv6yXX345zfZnzpzJ8GP57bffJOm6AdIXX2fdChQoIEmpBug4f/68pOSzQ9c6e/askpKSVLp0aZ+jHkZGRqpQoUKpzly6j0Va98S5ZfRYmKapf/zjHxo/fnya98wlJCRkqFZ2c4c093GF/xHYAAAA8pDixYvrpZdeUlhYmAYMGKClS5d6rS9RooRq1qyp77//Xv/4xz80e/ZsBQWl/ZYwNDTU53Kn0ylJat68uSpVqpRm+5QDaWRURu6/u9Hto6KiJMnnJXzucJTZ/TudThmGke49Ze5BR9IzZ84cvfvuuypXrpwmTJigxo0bq3jx4rLZbEpKSlJISEiaQS4tLpcrU9tnlDuouY8r/I/ABgAAkAe5R1K89qxOcHCwFi9erHbt2ik2NlZWq1UzZ87M9IiD7rNaDz/8sJ577jm/9PmWW26RJB04cMAv9XwpUaKEJOncuXOp1hUrVkzBwcE6ceKEkpKSUp1lS0hI8HlfYLly5RQXF6f333/fL5cFuofJ/+ijj9S+fXuvdQcP+p583d3XixcvplrndDp14sSJLPfLlz///FOSf6aXgG8MOgIAAJALpXeGJS4uTpJUpkyZVOvCwsK0ZMkStWzZUnPmzNETTzyR6TMw99xzjySlmm/tetyhwuHwfX28u+bnn3+e6TNIGVWvXj1J0q+//ppqnc1m0x133CGXy6V58+alWv/VV1/5rHkjx+J63CHIHWBT+ve//+2zTenSpSVJ+/btS7Xuhx9+kN2e8el60nue3C5cuKDff/9dFStW5P61bJSrA1tiYqKGDx+uatWqKTQ0VGXKlFFMTIzP4VbTEx8frxdeeEHR0dEKCQlRdHS0nn/++euOruRyuTRhwgTVqVNHYWFhKl68uB555JE0J2mcOnWq1+SD1349+uijme43AAD4H4fLpSRHYH45/HxJ2rBhwzR48GAdOnQo1br9+/frxRdflCR16dLFZ/vw8HAtXbpUzZs316xZs9S7d+9Mhba77rpLbdq00cqVKzVw4MBUZ3ZcLpe+/fZbrVu3zrOsWLFistlsiouL81xSmVKXLl1UrVo1bd++Xa+88kqqwLBt27Ybep+XUpMmTWS1Wj1D7F/LPajIa6+95jVgyZEjRzR69GifbV588UWFhYVp4MCBWrx4car1586d06RJk3TlypUM9dE9YMqnn37qFVzXrl2rt99+22ebli1bSpJmzJjhNVH3wYMHNWDAgAzt180d8vfu3Xvd7bZs2SLTNNW8efNM1Ufm5NpLIhMTE9WmTRutX79epUuXVqdOnXT48GFNmTJFS5Ys0YYNGzJ8w+rZs2fVuHFj7d+/X5UqVVLnzp21e/duvf/++1q2bJk2btzomSDSzTRNdevWTbGxsSpUqJDatWunM2fOaN68eVq6dKlWrlypO++80+f+rp2E0C2t7QEAQMZ8str35WJ50cWLF/Xee+/pnXfeUfXq1XXrrbfKZrPp6NGj2rx5s1wul26//XYNHz48zRoRERFatmyZ2rZtqy+//FJWq1VffPFFhu/hmjlzpu677z5NmDBB06dP12233abixYvr+PHj2rt3r06fPq3x48d7RowMDg5W27ZttXjxYtWrV08NGjRQcHCwmjZtqj59+igoKEjz5s3Tvffeq7Fjx2rGjBlq0qSJHA6H9u7dq//+979auXKlz0FGMioyMlLNmzfXqlWrdOzYsVS1evbsqfnz52vBggWqXr262rRpI9M09d1336lly5YyDENHjx71alO1alXNmDFDjz32mDp27Oh5PkzT1JEjR7Rnzx4lJSWpR48eCgsLS7ePzz33nKZOnapJkyZp1apVqlu3ro4fP65169bpxRdf1DvvvJOqTaVKlfTEE094nocWLVro0qVL2rhxo9q1a6fExEQdOXIkQ8forrvuUokSJRQbG6tWrVqpUqVKslgsiomJUZMmTTzbrVq1SpL04IMPZqgubkyuPcM2ZswYrV+/Xo0bN9a+ffs0Z84cbdq0SePGjdPp06cVExOT4VoDBw7U/v371aVLF+3du1dz5szRrl27NGDAAB04cECDBg1K1WbKlCmKjY1V1apV9euvvyo2NlarVq3S3LlzdeXKFfXs2TPN08idO3fW1KlTU30988wzN3w8AABA/jJ06FBNnz5dPXr0UFBQkFavXq358+frwIEDatmypSZOnKj169enOxhEgQIFPPOpTZ06VU899VSGL0csWbKkNm7cqHfffVdVq1bVli1btHDhQh07dkz169fXxIkT9dhjj3m1+fzzz/X444/r7NmzmjVrliZPnqzVq1d71teuXVvbtm3Tiy++qIiICC1evFirV69WSEiIhg4dqrp162b+YF2jb9++kpInyb6WYRiaM2eO/vWvf6l48eJatmyZtm3bpgEDBmj+/PlphtkuXbpo+/btevrpp2W327V8+XKtWrVKV69eVc+ePbVkyZIMD8xRrVo1bdmyRR06dNCZM2e0aNEiXbx4UZ988kmaZ9gk6bPPPtMrr7yiggUL6ptvvtGRI0f06quv+nyc1xMaGqqlS5fq3nvv1bZt2zR16lRNnjw51eWWs2fPVrFixfTQQw9lqj4yxzCz6wLhbGS321WiRAnFx8frl19+Uf369b3W16tXTzt27NBPP/2k22+//bq1Tpw4obJly8pqteq3335TyZIlPeuuXr2qW265RefOndPx48e91tWqVUt79uzRggUL1LlzZ6+anTp10qJFixQbG6uuXbt6lk+dOlV9+vTR8OHDrztrfFa5RyDavXt3tu0DgcE0TTlc2TBOviNJ+jF5Ys6g5i/JsKUezjlLtdeOS/6++Yv+nTIAQJ7kcrk8l2ZVr1491fxcpmnK7sxdb2dsViPTIxHCf65evaro6GiVKFHCM5E2MmfDhg1q0qSJBg8erLfeeiunu3PTpfe6dK2svD/PlZdErlu3TvHx8apcuXKqsCYlj1a0Y8cOLV68ON3Atnz5crlcLrVu3dorkEnJ85p06NBBX3zxhZYvX67evXtLkg4dOqQ9e/YoLCxM7dq187n/RYsWafHixV6BDfA3h8uhz3Z+lv6GmeVySueTX1D6uhyyyY+BDQD8zDAMBQcRfpBxISEheu2119SvXz8tW7aMS/puwJtvvqlChQpp8ODBOd2VPC9XXhK5fft2SUpzpnj3cvd2/q7l/r527dqy2WyZ3v/PP/+sl156SU8//bSGDx/udRkAAAAAst9TTz2latWqadSoUTndlVxn69atWrRokYYMGZJqnAf4X648w+a+0TOtG07dy6+9IdRftbK6/yVLlmjJ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7Ki4uDh9/fXXnuVBQUHauHGj2rVrJ4vlf4fdYrFo9OjRqlGjhhISErR06dJMHg0AAAAAeVWuDGzr1q1TfHy8KleurPr166da//DDD0uSFi9enG6t5cuXy+VyqUWLFl7BS5JCQkLUoUMHOZ1OLV++3LP80KFD2rNnj8LCwtSuXbss7V+SDMNQnTp1JEm///57htoAAAAAyPtyZWDbvn27JKlBgwY+17uXu7fzdy3397Vr15bNZsvS/t0OHjwoSSpVqlSG2wAAAADI24LS3yTwHD16VJJUrlw5n+vdy93b+buWP/cvJZ8x/PnnnxUcHKy2bdtmqI0k1apVy+fyuLg4Va5cOcN1AAAAAASmXHmG7eLFi5Kk8PBwn+sjIiK8tvN3LX/u/8KFC54BUgYOHKjSpUun2wYAAABA/pArz7CZpikp+d6v663Prlrptckop9OpHj16aP/+/brjjjs0atSoTLXfvXu3z+VpnXkDAAAAkLvkyjNskZGRkqRLly75XH/58mVJ8ho90p+10mvjXp7e/p966iktXbpU1atX19KlSxUcHJxufwEAAADkH7kysJUvX16SdOzYMZ/r3cvd2/m7lj/2/9JLL+mLL77QLbfcohUrVqhYsWLp9hUAAABA/pIrA1u9evUkSb/88ovP9e7ldevWzZZa7ja7du2S3W7P9P7feOMNvfPOOypRooRWrFihW265Jd1+AgAAAMh/cmVga9q0qaKiohQXF6etW7emWh8bGytJat++fbq12rZtK4vForVr1+rUqVNe665evarFixfLYrHogQce8CyvWLGibr31Vl25csXnRNfX2/+nn36qV199VYUKFdI333yj6tWrp9tHAAAAAPlTrgxswcHB6t+/vySpf//+XveSvfvuu9qxY4eaNWumRo0aeZZ/+OGHqlGjhoYMGeJVq3Tp0urevbuSkpL07LPPyuFweNYNHjxYp0+fVo8ePVLNjzZo0CDPNimD3vz587Vo0SJVrFhRnTt39moTGxurZ555RgUKFNCyZct02223Zek4AAAAAMjbcuUokZI0dOhQfffdd1q/fr2qVq2q5s2b68iRI9q0aZOKFi2qKVOmeG1/5swZ7d27V3/88UeqWhMmTNDGjRs1b9481ahRQw0bNtTu3bu1a9cuVa5cWePHj0/VJiYmRsuWLdOCBQtUo0YNtWnTRmfOnNHq1asV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\n",
      "text/plain": [
       "<Figure size 960x720 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(dpi=150)\n",
    "plt.hist(Stretch,bins=30,range=(0,1000),density=True,histtype='step',alpha=0.5,label='Skretch(default)')\n",
    "plt.hist(DE,bins=30,range=(0,1000),density=True,histtype='step',alpha=0.5,label='Differential evolution')\n",
    "plt.hist(Walk,bins=30,range=(0,1000),density=True,histtype='step',alpha=0.5,label='Walk')\n",
    "plt.legend()\n",
    "plt.title('Different sampling algorithms of emcee')\n",
    "plt.xlabel(r'$\\tau$/d')\n",
    "plt.ylabel('P')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "id": "a0accd70",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "331.50199872609767 327.9766136197336 296.56649887195556\n"
     ]
    }
   ],
   "source": [
    "print(np.mean(Stretch),np.mean(DE),np.mean(Walk))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "79a9784d",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.11.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
